package com.vxdata.utils.modules.hbase.service;


import com.vxdata.common.core.domain.R;
import org.apache.hadoop.hbase.client.Put;

import java.util.List;
import java.util.Map;

/**
 * @description: HBase基本操作
 * @author: lijj
 * @create: 2020-04-03 12:53
 **/
public interface BaseService {

    /**
     * 创建表
     *
     * @param tableName 表名
     * @param cfs 列族的数组
     * @return
     */
    public R createTable(String tableName, List<String> cfs);


    /**
     * 插入数据
     *
     * @param tableName
     * @param deviceTime
     * @param modelID
     * @param deviceID
     * @param dataMap
     * @return
     */
    R insertData(String tableName, String deviceTime, String modelID, String deviceID, Map<String, Object> dataMap);

    /**
     * 批量插入数据
     *
     * @param tableName
     * @param puts
     * @return
     */
    R insertData(String tableName, List<Put> puts);

    /**
     * 判断表是否存在
     *
     * @param tableName
     * @return
     */
    R isTableExist(String tableName);
}